home *** CD-ROM | disk | FTP | other *** search
- //////////
- //
- // File: VR3DObjects.h
- //
- // Contains: QuickDraw 3D support for QuickTime VR movies.
- //
- // Written by: Tim Monroe
- //
- // Copyright: © 1996 by Apple Computer, Inc., all rights reserved.
- //
- // Change History (most recent first):
- //
- // <1> 12/05/96 rtm first file
- //
- //////////
-
- #pragma once
-
-
- //////////
- //
- // header files
- //
- //////////
-
- #include <QD3D.h>
- #include <QD3DAcceleration.h>
- #include <QD3DGroup.h>
- #include <QD3DStorage.h>
- #include <QD3DErrors.h>
- #include <QD3DView.h>
- #include <QD3DMath.h>
- #include <QD3DGeometry.h>
- #include <QD3DShader.h>
- #include <QD3DRenderer.h>
- #include <QD3DLight.h>
- #include <QD3DDrawContext.h>
- #include <QD3DCamera.h>
- #include <QD3DTransform.h>
- #include <QD3DStorage.h>
- #include <QD3DIO.h>
- #include <QD3DSet.h>
- #include <QDOffscreen.h>
-
- #include "ComApplication.h"
-
- #if TARGET_OS_MAC
- #include "MacFramework.h"
- #endif
-
- #if TARGET_OS_WIN32
- #include "WinFramework.h"
- #endif
-
- #include "VRScript.h"
-
-
- //////////
- //
- // constants
- //
- //////////
-
- #define kDefaultInterpolation kQ3InterpolationStyleVertex // default interpolation style
- #define kDefaultBackfacing kQ3BackfacingStyleBoth // default backfacing style
- #define kDefaultFill kQ3FillStyleFilled // default fill style
- #define kDefaultRotateRadians 0.1 // default rotation factor
- #define kDefaultScale 1.0 // default scale factor
- #define kDefaultChromaKeyState true // default chroma key state for QD3D textures
-
- #define k3DObjectDistance 6.0 // this controls the point-of-interest
- #define kPicFileHeaderSize 512 // the number of bytes in PICT file header
-
-
- //////////
- //
- // function prototypes
- //
- //////////
-
- void VR3DObjects_Init (void);
- void VR3DObjects_Stop (void);
- Boolean VR3DObjects_IsQD3DAvailable (void);
- void VR3DObjects_InitWindowData (WindowObject theWindowObject);
- void VR3DObjects_DumpWindowData (WindowObject theWindowObject);
- Boolean VR3DObjects_DoIdle (WindowObject theWindowObject);
- void VR3DObjects_EnlistBox (WindowObject theWindowObject, UInt32 theEntryID, float theX, float theY, float theZ, float theXSize, float theYSize, float theZSize, UInt32 theOptions);
- void VR3DObjects_EnlistCone (WindowObject theWindowObject, UInt32 theEntryID, float theX, float theY, float theZ, float theMajRad, float theMinRad, float theHeight, UInt32 theOptions);
- void VR3DObjects_EnlistCylinder (WindowObject theWindowObject, UInt32 theEntryID, float theX, float theY, float theZ, float theMajRad, float theMinRad, float theHeight, UInt32 theOptions);
- void VR3DObjects_EnlistEllipsoid (WindowObject theWindowObject, UInt32 theEntryID, float theX, float theY, float theZ, float theMajRad, float theMinRad, float theHeight, UInt32 theOptions);
- void VR3DObjects_EnlistTorus (WindowObject theWindowObject, UInt32 theEntryID, float theX, float theY, float theZ, float theMajRad, float theMinRad, float theHeight, float theRatio, UInt32 theOptions);
- void VR3DObjects_EnlistRectangle (WindowObject theWindowObject, UInt32 theEntryID, float theX, float theY, float theZ,
- float theX1, float theY1, float theZ1,
- float theX2, float theY2, float theZ2,
- float theX3, float theY3, float theZ3,
- float theX4, float theY4, float theZ4, UInt32 theOptions);
- void VR3DObjects_Enlist3DMFFile (WindowObject theWindowObject, UInt32 theEntryID, float theX, float theY, float theZ, UInt32 theOptions, char *thePathName);
- TQ3GroupObject VR3DObjects_CreateDefaultGroup (TQ3GeometryObject theObject);
- TQ3ViewObject VR3DObjects_CreateView (GWorldPtr theGWorld);
- TQ3GroupObject VR3DObjects_CreateLights (void);
- TQ3DrawContextObject VR3DObjects_CreateDrawContext (GWorldPtr theGWorld);
- TQ3CameraObject VR3DObjects_CreateCamera (CGrafPtr thePort);
- TQ3AttributeSet VR3DObjects_GetModelAttributeSet (VRScript3DObjPtr thePointer);
- void VR3DObjects_SetSubdivisionStyle (TQ3GroupObject theGroup, short theNumDivisions);
- void VR3DObjects_SetColor (WindowObject theWindowObject, UInt32 theEntryID, float theRed, float theGreen, float theBlue, UInt32 theOptions);
- void VR3DObjects_SetTransparency (WindowObject theWindowObject, UInt32 theEntryID, float theRed, float theGreen, float theBlue, UInt32 theOptions);
- void VR3DObjects_SetInterpolation (WindowObject theWindowObject, UInt32 theEntryID, UInt32 theStyle, UInt32 theOptions);
- void VR3DObjects_SetBackfacing (WindowObject theWindowObject, UInt32 theEntryID, UInt32 theStyle, UInt32 theOptions);
- void VR3DObjects_SetFill (WindowObject theWindowObject, UInt32 theEntryID, UInt32 theStyle, UInt32 theOptions);
- void VR3DObjects_SetLocation (WindowObject theWindowObject, UInt32 theEntryID, float theX, float theY, float theZ, UInt32 theOptions);
- void VR3DObjects_SetRotation (WindowObject theWindowObject, UInt32 theEntryID, float theX, float theY, float theZ, UInt32 theOptions);
- void VR3DObjects_SetRotationState (WindowObject theWindowObject, UInt32 theEntryID, Boolean theState, UInt32 theOptions);
- void VR3DObjects_SetVisibleState (WindowObject theWindowObject, UInt32 theEntryID, Boolean theState, UInt32 theOptions);
- void VR3DObjects_SetTexture (WindowObject theWindowObject, UInt32 theEntryID, Boolean isMovie, UInt32 theOptions, char *thePathName);
- void VR3DObjects_AnimateModel (VRScript3DObjPtr thePointer);
- TQ3Status VR3DObjects_DrawModel (WindowObject theWindowObject);
- TQ3Status VR3DObjects_SubmitModel (VRScript3DObjPtr thePointer, TQ3ViewObject theView);
- TQ3GroupObject VR3DObjects_GetModelFromFile (char *thePathName);
- void VR3DObjects_PrescreenRoutine (QTVRInstance theInstance, WindowObject theWindowObject);
- void VR3DObjects_SetCamera (WindowObject theWindowObject);
- void VR3DObjects_SetCameraAspectRatio (WindowObject theWindowObject);
- void VR3DObjects_UpdateDrawContext (WindowObject theWindowObject);
- void VR3DObjects_DumpEntryMem (VRScript3DObjPtr theEntry);
-
-